
#ifndef __DIDO_H_
#define __DIDO_H_


#include "driver/gpio.h"
#include "led.h"


#define DO0    43
#define DO1    45
#define DO2    46
#define DO3    47
#define DO4    48
#define DO5    53

#define DI0    39
#define DI1    40
#define DI2    41
#define DI3    42



#define DO_0(x)          do { x ?                                      \
                             gpio_set_level(DO0, PIN_SET) :  \
                             gpio_set_level(DO0, PIN_RESET); \
                        } while(0) 
                        
#define DO_1(x)          do { x ?                                      \
								 gpio_set_level(DO1, PIN_SET) :  \
								 gpio_set_level(DO1, PIN_RESET); \
							} while(0)	

#define DO_2(x)          do { x ?                                      \
								 gpio_set_level(DO2, PIN_SET) :  \
								 gpio_set_level(DO2, PIN_RESET); \
							} while(0)	

#define DO_3(x)          do { x ?                                      \
								 gpio_set_level(DO3, PIN_SET) :  \
								 gpio_set_level(DO3, PIN_RESET); \
							} while(0)	

#define DO_4(x)          do { x ?                                      \
								 gpio_set_level(DO4, PIN_SET) :  \
								 gpio_set_level(DO4, PIN_RESET); \
							} while(0)	

#define DO_5(x)          do { x ?                                      \
								 gpio_set_level(DO5, PIN_SET) :  \
								 gpio_set_level(DO5, PIN_RESET); \
							} while(0)	


#define DI_0            gpio_get_level(DI0)
#define DI_1            gpio_get_level(DI1)
#define DI_2            gpio_get_level(DI2)
#define DI_3            gpio_get_level(DI3)



/* 函数声明*/
void DO_init(void); 
void DI_init(void);

#endif
